// LEARN / GSC

Google Search Console Coverage Report Errors Explained

7,950 organic clicks/mo, 557,000 impressions/mo, and 16,100 indexed pages still leave 591,000 URLs not indexed. The GSC coverage report is where you see why.

Hand-drawn chart listing Google Search Console left-nav menus and their purposes

What the report shows

The Indexing › Pages report is not a site-quality score. It is a URL classification log for sc-domain:example.com, with one row per issue type and counts that change as Google recrawls.

On enzymes.bio, the split was blunt: 16,100 indexed pages and 591,000 not indexed. That gap matters more than the label on the issue. If Google cannot explain a URL with a stable status, it usually cannot rank it consistently.

Use the report with Performance › Search results open beside it. Compare Total clicks, Total impressions, and Average position over the Last 16 months so you can tell whether a fix improved discovery, not just indexation.

How to read it

Start in Indexing › Pages, then click any issue row to see the Examples table. The important columns are the issue label, validation state, and sample URLs. Google is telling you which URLs it chose, not every bad URL on the site.

A page indexing report error only matters if it affects URLs that should rank or convert. A thin tag archive with 50,000 URLs is noise. A product page, category page, or guide that should be indexed is signal.

Cross-check with Indexing › Sitemaps. If a URL is in the sitemap but still sits in Discovered - currently not indexed or Crawled - currently not indexed, the sitemap is not the problem. The page or its internal signals are.

Annotated Google Search Console Coverage report with indexed, not indexed, errors, and valid-with-warnings counts

The 14 error types

Server error (5xx)

Google got a 500/502/503 while crawling. Check origin uptime, edge caching, and Settings › Crawl stats for spikes in failed requests.

Redirect error

The URL chain breaks, loops, or hits too many hops. Keep redirects to one step where possible and verify final status is 200.

Submitted URL blocked by robots.txt

Your sitemap includes a URL Google cannot fetch. Either remove the block or remove the URL from the sitemap.

Submitted URL marked noindex

The page is in the sitemap but sends noindex. Pick one signal: index it, or keep it out of the sitemap.

Submitted URL seems to be a Soft 404

Google thinks the page is empty, generic, or functionally gone. Add unique content or return a real 404/410.

Submitted URL not found (404)

The sitemap points at a dead URL. Fix the internal link, redirect to the best match, or drop the URL.

Submitted URL has crawl issue

Google could not fetch the page for an unspecified reason. Check response headers, TLS, and robots delivery.

Blocked by robots.txt

The URL was found but cannot be crawled. This often shows up as a deliberate block that later gets forgotten.

Excluded by `noindex` tag

The page can be crawled, but the HTML says not to index it. Common on filtered pages and staging leftovers.

Alternate page with proper canonical tag

Google picked a different canonical. If the chosen page is wrong, fix internal links, canonicals, and duplicates.

Duplicate without user-selected canonical

Google found duplicate URLs and had to guess. Add a canonical and reduce parameter-based duplication.

Discovered - currently not indexed

Google knows the URL but has not crawled it yet. This is often a crawl-budget or internal-linking problem.

Crawled - currently not indexed

Google fetched the page and decided not to index it. Usually thin content, duplicate intent, or weak signals.

Page with redirect

The URL resolves via redirect and is therefore excluded. This is normal unless the redirect target is wrong or temporary.

Warnings and exclusions

The coverage report explained version most people want is really about the gray rows: warnings and exclusions. They are not all bugs.

Discovered - currently not indexed usually means Google saw the URL in a sitemap or link graph but did not spend crawl budget on it yet. Crawled - currently not indexed means Google spent the crawl and still did not see enough value.

On enzymes.bio, a big contributor was scale: 35 languages via TranslatePress and a huge multilingual URL surface. If the page set is larger than the link graph can support, you get a backlog. That is not a mystery; it is capacity.

Fix order that works

  1. 01

    Sort by business value

    Start with URLs that can earn clicks or revenue. Ignore archive noise until the money pages are clean.

  2. 02

    Check the URL source

    For each row, ask where Google found it: sitemap, internal link, external link, or legacy redirect. Then fix the source, not just the symptom.

  3. 03

    Inspect response and canonicals

    Use DevTools and curl -I to verify status code, canonical, robots meta, and redirect target. A mismatch here explains many gsc coverage report errors.

  4. 04

    Rebuild internal paths

    If important pages sit in Discovered - currently not indexed, improve internal links from indexable hubs and related pages.

  5. 05

    Validate with GSC

    After fixes, click Validate fix in Indexing › Pages and watch both the issue count and Performance › Search results trend.

Checks in GSC

curl -I https://example.com/product/widget

# Look for:
# HTTP/2 200
# x-robots-tag: none
# link: <https://example.com/product/widget>; rel="canonical"

# If you test a redirect chain, verify the final URL only:
curl -I -L https://example.com/old-widget

# In Search Console, compare:
# Indexing › Pages
# Indexing › Sitemaps
# Performance › Search results
# Settings › Crawl stats

Common traps

FieldBad readBetter read

Discovered - currently not indexed

Google hates the page

Google has not crawled it yet

Crawled - currently not indexed

The page is broken

The page was crawled and judged low value

Alternate page with proper canonical tag

Duplicate content penalty

Canonical selection is working, unless it picked the wrong URL

Submitted URL blocked by robots.txt

Robots is always wrong

The sitemap and crawl rules conflict

Page with redirect

A fatal error

Expected exclusion if the redirect target is correct

FAQ

Is the Coverage report still the right screen?

Yes, but in modern GSC the main screen is Indexing › Pages. The old term still appears in search queries, docs, and team chats.

What is the best first fix for search console coverage errors?

Fix the issue on URLs that should rank first. On most sites that means Discovered - currently not indexed, Crawled - currently not indexed, and bad sitemap entries.

Should every exclusion be removed?

No. Page with redirect, Alternate page with proper canonical tag, and intentional noindex exclusions are usually fine.

How do I know if a fix worked?

Watch the issue count in Indexing › Pages, then confirm movement in Performance › Search results for Total clicks and Average position.

Do backlinks change coverage errors?

They do indirectly. More discovery paths can reduce backlog, but crawl and index decisions still depend on content, internal links, and technical signals.

Where do I see crawl budget clues?

Open Settings › Crawl stats and compare Googlebot activity, fetch time, and response pattern with the issue spikes in Indexing › Pages.

When to get help

If the issue list is large, the site has templates, faceted URLs, or multilingual routing, the fastest path is an audit with exact fixes per URL pattern. That is what a technical SEO audit is for.

If you want the broader setup first, read the Google Search Console guide, then the indexing issues troubleshooting playbook. For two common states, see fix discovered not indexed and fix crawled not indexed.

If the report is noisy, the audit should end in a Notion doc with the exact URL sets, the status code logic, and the follow-up crawl checks. That is how you get from a label to a change.

Example JSON-LD

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "What is a Search Console coverage error?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A URL status in Google Search Console that explains why Google did or did not index a page."
      }
    }
  ]
}
// FAQ

Common questions

Is the Coverage report still the right screen?
Yes, but in modern GSC the main screen is `Indexing › Pages`. The old term still appears in search queries, docs, and team chats.
What is the best first fix for search console coverage errors?
Fix the issue on URLs that should rank first. On most sites that means `Discovered - currently not indexed`, `Crawled - currently not indexed`, and bad sitemap entries.
Should every exclusion be removed?
No. `Page with redirect`, `Alternate page with proper canonical tag`, and intentional `noindex` exclusions are usually fine.
How do I know if a fix worked?
Watch the issue count in `Indexing › Pages`, then confirm movement in `Performance › Search results` for `Total clicks` and `Average position`.
Do backlinks change coverage errors?
They do indirectly. More discovery paths can reduce backlog, but crawl and index decisions still depend on content, internal links, and technical signals.
Where do I see crawl budget clues?
Open `Settings › Crawl stats` and compare Googlebot activity, fetch time, and response pattern with the issue spikes in `Indexing › Pages`.
// FREE-AUDIT

Get a free 30-minute technical SEO audit

Send your URL and one symptom. You'll get a Loom walkthrough back within 48 hours — no sales call.

Request a free audit
In plain English: Google is telling you which URLs are stuck, why they are stuck, and which fixes are worth doing first.